home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / python2.4 / test / test_difflib.pyc (.txt) < prev    next >
Python Compiled Bytecode  |  2005-10-18  |  5KB  |  85 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.4)
  3.  
  4. import difflib
  5. from test.test_support import run_unittest, findfile
  6. import unittest
  7. import doctest
  8.  
  9. class TestSFbugs(unittest.TestCase):
  10.     
  11.     def test_ratio_for_null_seqn(self):
  12.         s = difflib.SequenceMatcher(None, [], [])
  13.         self.assertEqual(s.ratio(), 1)
  14.         self.assertEqual(s.quick_ratio(), 1)
  15.         self.assertEqual(s.real_quick_ratio(), 1)
  16.  
  17.     
  18.     def test_comparing_empty_lists(self):
  19.         group_gen = difflib.SequenceMatcher(None, [], []).get_grouped_opcodes()
  20.         self.assertRaises(StopIteration, group_gen.next)
  21.         diff_gen = difflib.unified_diff([], [])
  22.         self.assertRaises(StopIteration, diff_gen.next)
  23.  
  24.  
  25. patch914575_from1 = '\n   1. Beautiful is beTTer than ugly.\n   2. Explicit is better than implicit.\n   3. Simple is better than complex.\n   4. Complex is better than complicated.\n'
  26. patch914575_to1 = '\n   1. Beautiful is better than ugly.\n   3.   Simple is better than complex.\n   4. Complicated is better than complex.\n   5. Flat is better than nested.\n'
  27. patch914575_from2 = '\n\t\tLine 1: preceeded by from:[tt] to:[ssss]\n  \t\tLine 2: preceeded by from:[sstt] to:[sssst]\n  \t \tLine 3: preceeded by from:[sstst] to:[ssssss]\nLine 4:  \thas from:[sst] to:[sss] after :\nLine 5: has from:[t] to:[ss] at end\t\n'
  28. patch914575_to2 = '\n    Line 1: preceeded by from:[tt] to:[ssss]\n    \tLine 2: preceeded by from:[sstt] to:[sssst]\n      Line 3: preceeded by from:[sstst] to:[ssssss]\nLine 4:   has from:[sst] to:[sss] after :\nLine 5: has from:[t] to:[ss] at end\n'
  29. patch914575_from3 = 'line 0\n1234567890123456789012345689012345\nline 1\nline 2\nline 3\nline 4   changed\nline 5   changed\nline 6   changed\nline 7\nline 8  subtracted\nline 9\n1234567890123456789012345689012345\nshort line\njust fits in!!\njust fits in two lines yup!!\nthe end'
  30. patch914575_to3 = 'line 0\n1234567890123456789012345689012345\nline 1\nline 2    added\nline 3\nline 4   chanGEd\nline 5a  chanGed\nline 6a  changEd\nline 7\nline 8\nline 9\n1234567890\nanother long line that needs to be wrapped\njust fitS in!!\njust fits in two lineS yup!!\nthe end'
  31.  
  32. class TestSFpatches(unittest.TestCase):
  33.     
  34.     def test_html_diff(self):
  35.         f1a = (patch914575_from1 + '123\n' * 10) * 3
  36.         t1a = (patch914575_to1 + '123\n' * 10) * 3
  37.         f1b = '456\n' * 10 + f1a
  38.         t1b = '456\n' * 10 + t1a
  39.         f1a = f1a.splitlines()
  40.         t1a = t1a.splitlines()
  41.         f1b = f1b.splitlines()
  42.         t1b = t1b.splitlines()
  43.         f2 = patch914575_from2.splitlines()
  44.         t2 = patch914575_to2.splitlines()
  45.         f3 = patch914575_from3
  46.         t3 = patch914575_to3
  47.         i = difflib.HtmlDiff()
  48.         j = difflib.HtmlDiff(tabsize = 2)
  49.         k = difflib.HtmlDiff(wrapcolumn = 14)
  50.         full = i.make_file(f1a, t1a, 'from', 'to', context = False, numlines = 5)
  51.         tables = '\n'.join([
  52.             '<h2>Context (first diff within numlines=5(default))</h2>',
  53.             i.make_table(f1a, t1a, 'from', 'to', context = True),
  54.             '<h2>Context (first diff after numlines=5(default))</h2>',
  55.             i.make_table(f1b, t1b, 'from', 'to', context = True),
  56.             '<h2>Context (numlines=6)</h2>',
  57.             i.make_table(f1a, t1a, 'from', 'to', context = True, numlines = 6),
  58.             '<h2>Context (numlines=0)</h2>',
  59.             i.make_table(f1a, t1a, 'from', 'to', context = True, numlines = 0),
  60.             '<h2>Same Context</h2>',
  61.             i.make_table(f1a, f1a, 'from', 'to', context = True),
  62.             '<h2>Same Full</h2>',
  63.             i.make_table(f1a, f1a, 'from', 'to', context = False),
  64.             '<h2>Empty Context</h2>',
  65.             i.make_table([], [], 'from', 'to', context = True),
  66.             '<h2>Empty Full</h2>',
  67.             i.make_table([], [], 'from', 'to', context = False),
  68.             '<h2>tabsize=2</h2>',
  69.             j.make_table(f2, t2),
  70.             '<h2>tabsize=default</h2>',
  71.             i.make_table(f2, t2),
  72.             '<h2>Context (wrapcolumn=14,numlines=0)</h2>',
  73.             k.make_table(f3.splitlines(), t3.splitlines(), context = True, numlines = 0),
  74.             '<h2>wrapcolumn=14,splitlines()</h2>',
  75.             k.make_table(f3.splitlines(), t3.splitlines()),
  76.             '<h2>wrapcolumn=14,splitlines(True)</h2>',
  77.             k.make_table(f3.splitlines(True), t3.splitlines(True))])
  78.         actual = full.replace('</body>', '\n%s\n</body>' % tables)
  79.         expect = open(findfile('test_difflib_expect.html')).read()
  80.         self.assertEqual(actual, expect)
  81.  
  82.  
  83. Doctests = doctest.DocTestSuite(difflib)
  84. run_unittest(TestSFpatches, TestSFbugs, Doctests)
  85.